package com.cy.sc;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
import org.springframework.cloud.openfeign.EnableFeignClients;


/**
 * <br>@class: ApplicationConsumer8080
 * <br>@description: 使用Feign来做负载均衡，效果等同server-Consumer-dept80
 * <br>@author: cy
 * <br>@date: 2020-04-02 13:31:47
 * <br>@version: 1.0
 * <br>
 * <br>@since: (版本) 作者 时间 注释
 */
@EnableEurekaClient
@EnableFeignClients(basePackages = "com.cy.sc")
@SpringBootApplication
public class ApplicationConsumer8080 {
    // 本例中，采用Feign做负载均衡，去轮训获取对应的后端 集群式微服务业务接口
    // 流程map
    // user ==>> (this)Consumer ===Feign==>> service-dept 集群
    // ver2.0 加入了 feign与Hystrix 联动
    // 演示流程
    // user ==>> (this)Consumer ===Feign==>> service-dept,service-staff-hystrix 集群
    // 关掉 Service-dept 会看见 Consumer这边的 降级处理=>DeptClientServiceFallbackFactory
    // 访问 http://localhost:8101/staff/get/{id}?id=9999 （数据库中不存在的id）
    // 会看见 service-staff-hystrix 对 Consumer 熔断响应
    public static void main(String[] args) {
        SpringApplication.run(ApplicationConsumer8080.class, args);
    }
}